package co.edu.usbcali.modeloo;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

/**
 * Taxonomia entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "taxonomia", catalog = "estimacionpreliminar")
public class Taxonomia implements java.io.Serializable {

	// Fields

	private Integer idtaxonomia;
	private Clases clases;
	private Ambitos ambitos;
	private Tipos tipos;
	private Proyectos proyectos;
	private Integer pf;
	private Integer factorpotenciataxonm;

	// Constructors

	/** default constructor */
	public Taxonomia() {
	}

	/** minimal constructor */
	public Taxonomia(Integer idtaxonomia) {
		this.idtaxonomia = idtaxonomia;
	}

	/** full constructor */
	public Taxonomia(Integer idtaxonomia, Clases clases, Ambitos ambitos,
			Tipos tipos, Proyectos proyectos, Integer pf,
			Integer factorpotenciataxonm) {
		this.idtaxonomia = idtaxonomia;
		this.clases = clases;
		this.ambitos = ambitos;
		this.tipos = tipos;
		this.proyectos = proyectos;
		this.pf = pf;
		this.factorpotenciataxonm = factorpotenciataxonm;
	}

	// Property accessors
	@Id
	@Column(name = "IDTAXONOMIA", unique = true, nullable = false)
	public Integer getIdtaxonomia() {
		return this.idtaxonomia;
	}

	public void setIdtaxonomia(Integer idtaxonomia) {
		this.idtaxonomia = idtaxonomia;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "IDCLASES")
	public Clases getClases() {
		return this.clases;
	}

	public void setClases(Clases clases) {
		this.clases = clases;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "IDAMBITO")
	public Ambitos getAmbitos() {
		return this.ambitos;
	}

	public void setAmbitos(Ambitos ambitos) {
		this.ambitos = ambitos;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "IDTIPO")
	public Tipos getTipos() {
		return this.tipos;
	}

	public void setTipos(Tipos tipos) {
		this.tipos = tipos;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "IDPROYECTO")
	public Proyectos getProyectos() {
		return this.proyectos;
	}

	public void setProyectos(Proyectos proyectos) {
		this.proyectos = proyectos;
	}

	@Column(name = "PF")
	public Integer getPf() {
		return this.pf;
	}

	public void setPf(Integer pf) {
		this.pf = pf;
	}

	@Column(name = "FACTORPOTENCIATAXONM")
	public Integer getFactorpotenciataxonm() {
		return this.factorpotenciataxonm;
	}

	public void setFactorpotenciataxonm(Integer factorpotenciataxonm) {
		this.factorpotenciataxonm = factorpotenciataxonm;
	}

}